<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');


class ventas extends MY_Controller {
	/**
	 * Evita la validacion (enfocado cuando se usa ajax). Ver mas en privilegios_model
	 * @var unknown_type
	 */
	private $excepcion_privilegio = array('ventas/rpt_ventasv_comision/', 'ventas/ventasv_pdf/');
	
	public function _remap($method){
		$this->carabiner->css(array(
				array('libs/jquery-ui.css', 'screen'),
				array('libs/ui.notify.css', 'screen'),
				array('base.css', 'screen')
		));
		$this->carabiner->js(array(
				array('libs/jquery.min.js'),
				array('libs/jquery-ui.js'),
				array('libs/jquery.notify.min.js'),
				array('general/alertas.js'),
		));
		
		$this->load->model("empleados_model");
		if($this->empleados_model->checkSession()){
			$this->empleados_model->excepcion_privilegio = $this->excepcion_privilegio;
			$this->info_empleado = $this->empleados_model->getInfoEmpleado($_SESSION['id_empleado'], true);
			$this->{$method}();
		}else
			$this->{'login'}();
	}
	
	public function index(){
		redirect(base_url('panel/ordenes_trabajo'));
	}
	
	
	public function ventas_vendedor(){
		$this->carabiner->css(array(
				array('libs/jquery.msgbox.css', 'screen'),
				array('libs/jquery.treeview.css', 'screen'),
				array('general/forms.css', 'screen'),
				array('general/tables.css', 'screen')
		));
		$this->carabiner->js(array(
				array('libs/jquery.msgbox.min.js'),
				array('libs/jquery.treeview.js'),
				array('libs/jquery.numeric.js'),
				array('ventas/rpt_ventas_vendedor.js'),
				array('general/msgbox.js'),
				array('general/util.js')
		));
		$this->load->library('pagination');
		
		$params['info_empleado'] 	= $this->info_empleado['info']; //info empleado
		$params['opcmenu_active'] 	= 'Ventas'; //activa la opcion del menu
		$params['seo'] 				= array('titulo' => 'Reporte de ventas por vendedor');
		
		$_GET['ffecha1'] = isset($_GET['ffecha1'])? $this->input->get('ffecha1'): date("Y-m").'-01';
		$_GET['ffecha2'] = isset($_GET['ffecha2'])? $this->input->get('ffecha2'): date("Y-m-d");
		
		$this->load->model('ventas_model');
		$params['vende'] = $this->ventas_model->getVentasVendedor();
		
		if(isset($_GET['msg']{0}))
			$params['frm_errors'] = $this->showMsgs($_GET['msg']);
		
		$this->load->view('panel/header', $params);
		$this->load->view('panel/general/menu', $params);
		$this->load->view('panel/ventas/ventas_vendedor', $params);
		$this->load->view('panel/footer');
	}
	
	public function rpt_ventasv_comision(){
		if(isset($_POST['id_orden']{0})){
			$this->load->model('ventas_model');
			$resp = $this->ventas_model->updateComisionVenta();
			$params['msg'] = $this->showMsgs(3, 'La comisión se actualizo correctamente.');
		}else
			$params['msg'] = $this->showMsgs(1);
	
		echo json_encode($params);
	}
	
	public function ventasv_pdf(){
		$this->load->model('ventas_model');
		$this->ventas_model->ventasVendedorPdf();
	}
	
	
	
	/**
	 * Muestra mensajes cuando se realiza alguna accion
	 * @param unknown_type $tipo
	 * @param unknown_type $msg
	 * @param unknown_type $title
	 */
	private function showMsgs($tipo, $msg='', $title='Reporte Ventas!'){
		switch($tipo){
			case 1:
				$txt = 'El campo ID es requerido.';
				$icono = 'error';
				break;
			case 2: //Cuendo se valida con form_validation
				$txt = $msg;
				$icono = 'error';
				break;
			case 3:
				$txt = $msg;
				$icono = 'ok';
				break;
		}
	
		return array(
				'title' => $title,
				'msg' => $txt,
				'ico' => $icono);
	}
}

?>